home *** CD-ROM | disk | FTP | other *** search
Wrap
GW-BASIC | 1987-05-08 | 16.3 KB | 401 lines
10 SCREEN 0,0,0 20 CLS 30 LOCATE 1,1,0 40 KEY OFF 50 WIDTH 80 60 COLOR 7,0 70 CLEAR 80 LOCATE 2,20:PRINT " D E T E R M I N A N T S " 90 LOCATE 6,10:PRINT "This section of MATH PAK, offers the user a chance to" 100 LOCATE 7,10:PRINT "use CRAMER'S RULE in solving determinants. This section" 110 LOCATE 8,10:PRINT "offers second-order and third-order types of determinants." 120 LOCATE 9,10:PRINT "The second-order type, involves two equations," 130 LOCATE 10,10:PRINT "while the third-order type involves three equations." 140 LOCATE 12,10:PRINT "The format that is used is:" 150 LOCATE 13,15:PRINT "a1X + b1Y = c1" 160 LOCATE 14,15:PRINT "a2X + b2Y = c2" 170 LOCATE 15,10:PRINT "WHICH THEN GIVES THE (X,Y) SOLUTION" 180 LOCATE 17,10:PRINT "For third-order determinants, the format is:" 190 LOCATE 19,15:PRINT "a1X + b1Y + c1Z = d1" 200 LOCATE 20,15:PRINT "a2X + b2Y + c2Z = d2" 210 LOCATE 21,15:PRINT "a3X + b3Y + c3Z = d3" 220 LOCATE 22,10:PRINT "WHICH THEN GIVES THE (X,Y,Z) SOLUTION" 230 LOCATE 23,25:PRINT "PRESS THE S P A C E B A R TO CONTINUE":LOCATE 23,23:COLOR 15:PRINT CHR$(16):LOCATE 23,66:PRINT CHR$(17):COLOR 7,0 240 A$ = INKEY$ 250 IF A$ = CHR$(32) THEN 270 260 GOTO 240 270 CLS: LOCATE 6,10:PRINT "You will be asked to input which type of ":LOCATE 2,60:PRINT "page 2" 280 LOCATE 7,10:PRINT "determinant you want to solve(second or third" 290 LOCATE 8,10:PRINT "order), and then input the a1,b1,etc. values." 300 LOCATE 10,10:PRINT "This section also offers line equations, that" 310 LOCATE 11,10:PRINT "find the equation of a line, given certain values." 320 LOCATE 12,10:PRINT "Enter the letter L to enter this section." 330 LOCATE 14,10:PRINT "SELECTION:" 340 LOCATE 15,15:PRINT "P-POINT OF INTERSECTION(given two lines)" 350 LOCATE 16,15:PRINT "L-LINE EQUATIONS" 360 LOCATE 17,15:PRINT "S-SECOND ORDER" 370 LOCATE 18,15:PRINT "T-THIRD ORDER" 380 LOCATE 19,15:PRINT "X-EXIT TO FLOW" 390 LOCATE 21,25:PRINT "ENTER A LETTER:" 400 LOCATE 21,40:COLOR 31:PRINT CHR$(219) 410 A$ = INKEY$ 420 COLOR 7,0:LOCATE 21,40:PRINT A$:FOR T = 0 TO 250:NEXT T 430 IF A$ = "s" OR A$ ="S" THEN 490 440 IF A$ = "p" OR A$ = "P" THEN 3300 450 IF A$ = "L" OR A$ ="l" THEN 2260 460 IF A$ = "t" OR A$ ="T" THEN 1110 470 IF A$ = "X" OR A$ = "x" THEN CLS:CHAIN"FLOW" 480 GOTO 390 490 REM SECTION WILL CALCULATE SECOND-ORDER DETERMINANTS 500 CLS 510 LOCATE 2,10:PRINT "S E C O N D - O R D E R D E T E R M I N A N T S" 520 LOCATE 5,10:PRINT "The format used in this section is:" 530 LOCATE 7,15:PRINT "a1X + b1Y = c1" 540 LOCATE 8,15:PRINT "a2X + b2Y = c2" 550 LOCATE 10,10:PRINT "You will be asked the a1,b1,c1,a2,b2,and c2 values," 560 LOCATE 11,10:PRINT "in that order only." 570 LOCATE 12,10:PRINT "If a value of zero(0) in entered as an input for" 580 LOCATE 13,10:PRINT "a value of a1, then the program will return back " 590 LOCATE 14,10:PRINT "to the determinant selection section screen." 600 LOCATE 15,10:PRINT "AN EXAMPLE:" 610 LOCATE 16,15:PRINT"Given, 3x - 2y = 7" 620 LOCATE 17,15:PRINT "and 3x + 2y = 9" 630 LOCATE 18,10:PRINT "Then, a1 = 3,b1 = -2, and c1 = 7" 640 LOCATE 19,10:PRINT "And a2 = 3,b2 = 2, and c2 = 9" 650 LOCATE 20,10:PRINT "Using this guideline, you should enter the appropri-" 660 LOCATE 21,10:PRINT "ate values and a solution will be printed in the" 670 LOCATE 22,10:PRINT "lower portion of the screen." 680 LOCATE 23,25:PRINT "PRESS THE S P A C E B A R TO CONTINUE":LOCATE 23,23:COLOR 15:PRINT CHR$(16):LOCATE 23,66:PRINT CHR$(17):COLOR 7,0 690 A$ = INKEY$ 700 IF A$ = CHR$(32) THEN 720 710 GOTO 690 720 CLS 730 LOCATE 2,10:PRINT "SECOND-ORDER DETERMINANTS" 740 LOCATE 5,10:PRINT "ENTER a1":LOCATE 5,19:INPUT A1 750 IF A1 = 0 THEN 10 760 LOCATE 6,10:PRINT "ENTER b1":LOCATE 6,19:INPUT B1 770 LOCATE 7,10:PRINT "ENTER c1":LOCATE 7,19:INPUT C1 780 LOCATE 9,10:PRINT "ENTER a2":LOCATE 9,19:INPUT A2 790 LOCATE 10,10:PRINT "ENTER b2":LOCATE 10,19:INPUT B2 800 LOCATE 11,10:PRINT "ENTER c2":LOCATE 11,19:INPUT C2 810 LOCATE 15,10:PRINT "Are these values correct(y/n)":LOCATE 15,40:INPUT TE$ 820 IF TE$ ="y" OR TE$ ="Y" THEN 860 830 IF TE$ ="N" OR TE$ ="n" THEN 720 840 GOTO 810 850 REM begin calculations now 860 CLS 870 LOCATE 5,10:PRINT "D = ":FOR L = 3 TO 7:LOCATE L,16:PRINT CHR$(179):LOCATE L,45:PRINT CHR$(179):NEXT L 880 LOCATE 11,10:PRINT "Dx = ":FOR L = 9 TO 13:LOCATE L,16:PRINT CHR$(179):LOCATE L,45:PRINT CHR$(179):NEXT L 890 LOCATE 17,10:PRINT "Dy = ":FOR L = 15 TO 19:LOCATE L,16:PRINT CHR$(179):LOCATE L,45:PRINT CHR$(179):NEXT L 900 LOCATE 4,18:PRINT USING "#######.####";A1:LOCATE 4,31:PRINT USING "#######.####";B1 910 LOCATE 6,18:PRINT USING "#######.####";A2:LOCATE 6,31:PRINT USING "#######.####";B2 920 LOCATE 10,18:PRINT USING "#######.####";C1:LOCATE 10,31:PRINT USING "#######.####";B1 930 LOCATE 12,18:PRINT USING "#######.####";C2:LOCATE 12,31:PRINT USING "#######.####";B2 940 LOCATE 16,18:PRINT USING "#######.####";A1:LOCATE 16,31:PRINT USING "#######.####";C1 950 LOCATE 18,18:PRINT USING "#######.####";A2:LOCATE 18,31:PRINT USING "#######.####";C2 960 LOCATE 20,20:PRINT " USING x = Dx / D and y = Dy / D" 970 D = (A1 * B2) - (A2 * B1) 980 IF D = 0 THEN LOCATE 22,10:PRINT "THE D VALUE HERE IS ZER(0) AND THE SOLUTION CANNOT BE SOLVED":GOTO 1070 990 DX = (C1 * B2) - (C2 * B1) 1000 DY = (A1 * C2) - (A2 * C1) 1010 LOCATE 5,55:PRINT "= ":LOCATE 5,58:PRINT USING "############.###";D 1020 LOCATE 11,55:PRINT "= ":LOCATE 11,58:PRINT USING "############.###";DX 1030 LOCATE 17,55:PRINT "= ":LOCATE 17,58:PRINT USING "############.###";DY 1040 X = DX / D 1050 Y = DY / D 1060 LOCATE 21,15:PRINT "The solution is ":LOCATE 21,33:PRINT USING "############.###";X:LOCATE 21,50:PRINT " =x":LOCATE 22,33:PRINT USING "############.###";Y:LOCATE 22,50:PRINT " =y" 1070 LOCATE 23,20:PRINT "PRESS THE S P A C E B A R TO CONTINUE":LOCATE 23,18:COLOR 15:PRINT CHR$(16):LOCATE 23,63:PRINT CHR$(17):COLOR 7,0 1080 A$ = INKEY$ 1090 IF A$ =CHR$(32) THEN 10 1100 GOTO 1080 1110 REM this section will calculate third-order determinants 1120 CLS 1130 LOCATE 2,10:PRINT"T H I R D - O R D E R D E T E R M I N A N T S" 1140 LOCATE 4,10:PRINT "The format used in this section is:" 1150 LOCATE 5,15:PRINT "a1X + b1Y + c1Z = d1" 1160 LOCATE 6,15:PRINT "a2X + b2Y + c2Z = d2" 1170 LOCATE 7,15:PRINT "a3X + b3Y + c3Z = d3" 1180 LOCATE 9,10:PRINT "You will be asked the a1,b1,c1,d1,a2,b2,c2,d2," 1190 LOCATE 10,10:PRINT "a3,b3,c3 and d3 values in that order only." 1200 LOCATE 11,10:PRINT "If a value of zero(0) is entered as an input for" 1210 LOCATE 12,10:PRINT "a1, the program will return back to the deter-" 1220 LOCATE 13,10:PRINT "minant selection section screen." 1230 LOCATE 14,15:PRINT "AN EXAMPLE:" 1240 LOCATE 15,15:PRINT "Given, 3x + 2y - 4z = 12" 1250 LOCATE 16,15:PRINT " 2x - 4y + 3z = 4" 1260 LOCATE 17,15:PRINT "and, -3x + 5y + 4z = 5" 1270 LOCATE 18,10:PRINT "Then,a1 = 3,b1 = 2,c1 = -4,d1 = 12,a2 = 2,b2 = -4" 1280 LOCATE 19,10:PRINT "c2 = 3,d2 = 4,a3 = -3,b3 = 5,c3 = 4 and d3 = 5" 1290 LOCATE 20,10:PRINT "Using this guideline, you should enter the appropri-" 1300 LOCATE 21,10:PRINT "ate values and a solution will be printed in the" 1310 LOCATE 22,10:PRINT "lower portion of the screen." 1320 LOCATE 23,25:PRINT "PRESS THE S P A C E B A R TO CONTINUE":LOCATE 23,23:COLOR 15:PRINT CHR$(16):LOCATE 23,65:PRINT CHR$(17):COLOR 7,0 1330 A$ = INKEY$ 1340 IF A$ = CHR$(32) THEN 1360 1350 GOTO 1330 1360 CLS 1370 LOCATE 2,10:PRINT "THIRD-ORDER DETERMINANTS" 1380 LOCATE 5,10:PRINT "ENTER a1":LOCATE 5,19:INPUT A1 1390 IF A1 = 0 THEN 10 1400 LOCATE 6,10:PRINT "ENTER b1":LOCATE 6,19:INPUT B1 1410 LOCATE 7,10:PRINT "ENTER c1":LOCATE 7,19:INPUT C1 1420 LOCATE 8,10:PRINT "ENTER d1":LOCATE 8,19:INPUT D1 1430 LOCATE 10,10:PRINT "ENTER a2":LOCATE 10,19:INPUT A2 1440 LOCATE 11,10:PRINT "ENTER b2":LOCATE 11,19:INPUT B2 1450 LOCATE 12,10:PRINT "ENTER c2":LOCATE 12,19:INPUT C2 1460 LOCATE 13,10:PRINT "ENTER d2":LOCATE 13,19:INPUT D2 1470 LOCATE 15,10:PRINT "ENTER a3":LOCATE 15,19:INPUT A3 1480 LOCATE 16,10:PRINT "ENTER b3":LOCATE 16,19:INPUT B3 1490 LOCATE 17,10:PRINT "ENTER c3":LOCATE 17,19:INPUT C3 1500 LOCATE 18,10:PRINT "ENTER d3":LOCATE 18,19:INPUT D3 1510 LOCATE 20,20:PRINT "Are these values correct(y/n)":LOCATE 20,50:INPUT TE$ 1520 IF TE$ = "y" OR TE$ ="Y" THEN 1550 1530 IF TE$ = "n" OR TE$ ="N" THEN 1360 1540 GOTO 1510 1550 REM begin third order calculations now 1560 CLS 1570 D4 = (A1*((B2*C3) - (B3 *C2))) 1580 D5 = (A2 * ((B1 * C3) - (B3 * C1))) 1590 D6 = (A3 * ((B1 * C2) - ( B2 * C1))) 1600 D = D4 - D5 + D6 1610 IF D = 0 THEN 1620 ELSE GOTO 1700 1620 CLS 1630 LOCATE 15,10:PRINT "THE SOLUTION CANNOT BE SOLVED, BECAUSE" 1640 LOCATE 16,10:PRINT "THE VALUE CALCULATED FOR D IS ZERO(0)," 1650 LOCATE 17,10:PRINT "AND BECAUSE X = DX / D,Y = DY /D AND Z = DZ /D" 1660 LOCATE 18,10:PRINT "YOU CAN SEE THAT D CANNOT BE = 0 TO WORK." 1670 LOCATE 19,10:PRINT "OTHERWISE, YOU GET DIVISION BY ZERO(0)." 1680 FOR T = 0 TO 2500:NEXT T 1690 GOTO 1360 1700 DX4 = (D1 * (( B2 * C3) - ( B3 * C2))) 1710 DX5 = (D2 * (( B1 * C3) - ( B3 * C1))) 1720 DX6 = (D3 * (( B1 * C2) - ( B2 * C1))) 1730 DX = DX4 - DX5 + DX6 1740 DY4 = (A1 * (( D2 * C3) - ( D3 * C2))) 1750 DY5 = ( A2 * (( D1 * C3) - (D3 * C1))) 1760 DY6 = (A3 * (( D1 * C2) - ( D2 * C1))) 1770 DY = DY4 - DY5 + DY6 1780 DZ4 = ( A1 * (( B2 * D3) -(B3 * D2))) 1790 DZ5 = ( A2 * (( B1 * D3) - (B3 * D1))) 1800 DZ6 = (A3 * (( B1 * D2) - ( B2 * D1))) 1810 DZ = DZ4 - DZ5 + DZ6 1820 FOR L = 2 TO 6:LOCATE L,10:PRINT CHR$(179):LOCATE L,53:PRINT CHR$(179):NEXT L 1830 FOR L = 10 TO 14:LOCATE L,10:PRINT CHR$(179):LOCATE L,53:PRINT CHR$(179):NEXT L 1840 FOR L = 17 TO 21:LOCATE L,10:PRINT CHR$(179):LOCATE L,53:PRINT CHR$(179):NEXT L 1850 DY4 = (A1 * (( D2 * C3) - ( D3 * C2))) 1860 LOCATE 4,7:PRINT "D =":LOCATE 12,6:PRINT "Dx =":LOCATE 19,6:PRINT"Dy =" 1870 LOCATE 4,55:PRINT "= ":LOCATE 4,57:PRINT USING "############.###";D 1880 LOCATE 12,55:PRINT "= ":LOCATE 12,57:PRINT USING "############.###";DX 1890 LOCATE 19,55:PRINT "= ":LOCATE 19,57:PRINT USING "############.###";DY 1900 LOCATE 3,11:PRINT USING "#######.####";A1:LOCATE 3,26:PRINT USING "#######.####";B1:LOCATE 3,40:PRINT USING "#######.####";C1 1910 LOCATE 4,11:PRINT USING "#######.####";A2:LOCATE 4,26:PRINT USING "#######.####";B2:LOCATE 4,40:PRINT USING "#######.####";C2 1920 LOCATE 5,11:PRINT USING "#######.####";A3:LOCATE 5,26:PRINT USING "#######.####";B3:LOCATE 5,40:PRINT USING "#######.####";C3 1930 LOCATE 11,11:PRINT USING "#######.####";D1:LOCATE 11,26:PRINT USING "#######.####";B1:LOCATE 11,40:PRINT USING "#######.####";C1 1940 LOCATE 12,11:PRINT USING "#######.####";D2:LOCATE 12,26:PRINT USING "#######.####";B2:LOCATE 12,40:PRINT USING "#######.####";C2 1950 LOCATE 13,11:PRINT USING "#######.####";D3:LOCATE 13,26:PRINT USING "#######.####";B3:LOCATE 13,40:PRINT USING "#######.####";C3 1960 LOCATE 18,11:PRINT USING "#######.####";A1:LOCATE 18,26:PRINT USING "#######.####";D1:LOCATE 18,40:PRINT USING "#######.####";C1 1970 LOCATE 19,11:PRINT USING "#######.####";A2:LOCATE 19,26:PRINT USING "#######.####";D2:LOCATE 19,40:PRINT USING "#######.####";C2 1980 LOCATE 20,11:PRINT USING "#######.####";A3:LOCATE 20,26:PRINT USING "#######.####";D3:LOCATE 20,40:PRINT USING "#######.####";C3 1990 LOCATE 23,20:PRINT "PRESS S P A C E B A R TO SHOW Dz":LOCATE 23,18:COLOR 15:PRINT CHR$(16):LOCATE 23,54:PRINT CHR$(17):COLOR 7,0 2000 A$ = INKEY$ 2010 IF A$ = CHR$(32) THEN 2030 2020 GOTO 2000 2030 CLS 2040 FOR L = 12 TO 16:LOCATE L,10:PRINT CHR$(179):LOCATE L,53:PRINT CHR$(179):NEXT L 2050 LOCATE 14,6:PRINT "Dz =" 2060 LOCATE 14,55:PRINT "= ":LOCATE 14,57:PRINT USING "############.###";DZ 2070 LOCATE 13,11:PRINT USING "#######.####";A1:LOCATE 13,26:PRINT USING "#######.####";B1:LOCATE 13,40:PRINT USING "#######.####";D1 2080 LOCATE 14,11:PRINT USING "#######.####";A2:LOCATE 14,26:PRINT USING "#######.####";B2:LOCATE 14,40:PRINT USING "#######.####";D2 2090 LOCATE 15,11:PRINT USING "#######.####";A3:LOCATE 15,26:PRINT USING "#######.####";B3:LOCATE 15,40:PRINT USING "#######.####";D3 2100 LOCATE 18,10:PRINT "USING x = Dx / D,y = Dy / D and z = Dz / D" 2110 LET X = DX / D 2120 LET Y = DY / D 2130 LET Z = DZ / D 2140 LOCATE 20,15:PRINT USING "########.###";X:LOCATE 20,27:PRINT "= x" 2150 LOCATE 21,15:PRINT USING "########.###";Y:LOCATE 21,27:PRINT "= y" 2160 LOCATE 22,15:PRINT USING "########.###";Z:LOCATE 22,27:PRINT "= z" 2170 LOCATE 23,25:PRINT "PRESS THE S P A C E B A R TO CONTINUE":LOCATE 23,23:COLOR 15:PRINT CHR$(16):LOCATE 23,65:PRINT CHR$(17):COLOR 7,0 2180 A$ = INKEY$ 2190 IF A$ = CHR$(32) THEN 2210 2200 GOTO 2180 2210 CLS 2220 LOCATE 15,15:PRINT "Do you wish to view the screens over again(y/n)":LOCATE 15,63:INPUT TW$ 2230 IF TW$ = "y" OR TW$ ="Y" THEN GOTO 1550 2240 IF TW$ ="n" OR TW$ ="N" THEN 10 2250 GOTO 2220 2260 CLS 2270 LOCATE 2,10:PRINT "L I N E E Q U A T I O N S" 2280 LOCATE 5,10:PRINT "This section, will offer the user an accurate" 2290 LOCATE 6,10:PRINT "soultion to determine (x,y) coordinates on a graph," 2300 LOCATE 7,10:PRINT "using the x-axis and the y-axis." 2310 LOCATE 10,10:PRINT "THE EQUATION FORM IS aY + b = mX + d" 2320 LOCATE 12,10:PRINT "Where b and d can equal zero(0)(when not in the equation)." 2330 LOCATE 13,10:PRINT "If a zero(0) value is entered for value of a and/or m," 2340 LOCATE 14,10:PRINT "then,the program will assume the value of +1." 2350 LOCATE 15,10:PRINT "The values used for x range from -5 to + 5" 2360 LOCATE 16,10:PRINT "You can solve for a line, or find an equation," 2370 LOCATE 17,10:PRINT "given two points (x1,y1),(x2,y2)." 2380 LOCATE 18,10:PRINT "REMEMBER, (+)(-) = (-), (-)(-) = (+)" 2390 LOCATE 21,20:PRINT "A-USING aY + b = mX + d,PLOT THE POINTS." 2400 LOCATE 22,20:PRINT "B-GIVEN TWO POINTS,FIND AN EQUATION" 2410 :LOCATE 23,20:PRINT "X-EXIT TO DETERMINANT SECTION" 2420 LOCATE 20,10:PRINT "ENTER A SELECTION:":LOCATE 20,29:INPUT A$ 2430 IF A$ = "A" OR A$ ="a" THEN GOTO 2470 2440 IF A$ = "b" OR A$ = "B" THEN GOTO 3110 2450 IF A$ = "X" OR A$ ="x" THEN 10 2460 GOTO 2420 2470 CLS 2480 A1 = 0:B1 = 0:C1 = 0:D1 = 0:A=0:B=0:C=0:D=0:Y=0:G=0:H=0:I=0:J=0:F=0 2490 LOCATE 2,10:PRINT " USING aY + b = mX + d" 2500 LOCATE 5,10:PRINT "ENTER VALUE OF a ":LOCATE 5,27:INPUT A 2510 LOCATE 6,10:PRINT "ENTER VALUE OF b(if b is not in equation,enter 0) ":LOCATE 6,60:INPUT B 2520 LOCATE 7,10:PRINT "ENTER VALUE OF m(slope) ":LOCATE 7,36:INPUT C 2530 IF C < > 0 THEN 2580 2540 IF C = 0 THEN LOCATE 7,10:PRINT "Is x in the equation(y/n) ":LOCATE 7,37:INPUT R$ 2550 IF R$ ="y" OR R$ ="Y" THEN GOTO 2580 2560 IF R$ = "n" OR R$ ="N" THEN 2580 2570 GOTO 2540 2580 LOCATE 8,10:PRINT "ENTER VALUE OF d(if d is not in equation,enter 0) ":LOCATE 8,60:INPUT D 2590 LOCATE 10,10:PRINT "Are these values correct(y/n)":LOCATE 10,40:INPUT TES$ 2600 IF TES$ ="y" OR TES$="Y" THEN CLS:GOTO 2630 2610 IF TES$="n" OR TES$="N" THEN GOTO 2470 2620 GOTO 2590 2630 IF A = 0 THEN A1 = 1 ELSE A1 = A 2640 IF C = 0 THEN C1 = 1 ELSE C1 = C 2650 LOCATE 5,10:PRINT A1;"y";" + ";B;" = ";C1;"x ";" + ";D 2660 LOCATE 6,10:PRINT "The points of this line, given x = -5 to +5 are: " 2670 LET B1 = B 2680 LET D1 = D 2690 IF R$ = "n" OR R$ ="N" THEN 2900 2700 REM begin calculations now*********** 2710 LET G = D1 - B1 2720 LET I = C1 / A1 2730 LET J = G / A1 2740 LET Y = I + J 2750 LET R = 10 2760 LOCATE 9,25:PRINT "X":LOCATE 9,31:PRINT "Y" 2770 LET V = 24 2780 FOR X1 = -5 TO 5 STEP 1 2790 LOCATE R,V:PRINT X1:LOCATE R,(V+3):PRINT USING "#######.##";(( X1 * I) + J) 2800 IF X1 = 0 THEN LOCATE R,V:PRINT X1:LOCATE R,(V+3):PRINT USING "#######.##";J:LOCATE R,37:PRINT "(y-axis intercept)" 2810 IF ((X1 * I) + J) = 0 THEN LOCATE R,37:PRINT "(x-axis intercept)" 2820 R = R + 1 2830 NEXT X1 2840 LOCATE 21,20:PRINT "The slope(m) is ":LOCATE 21,41:PRINT USING "########.####";I 2850 LOCATE 22,20:PRINT "The equation is y = ":LOCATE 22,41:PRINT USING "########.##";I:LOCATE 22,52:PRINT "x";" + ":LOCATE 22,57:PRINT USING "########.####";J 2860 LOCATE 23,20:PRINT "Do you wish additional equations(y/n)":LOCATE 23,59:INPUT Q$ 2870 IF Q$ = "Y" OR Q$ ="y" THEN 2470 2880 IF Q$ = "N" OR Q$ ="n" THEN 2260 2890 GOTO 2860 2900 R = 10:LOCATE 9,25:PRINT "X"," Y" 2910 LOCATE 5,10:PRINT " ";A1;"y";" = ";D;" " 2920 LET D1 = D:LET A1 = A 2930 LET C1 = C: LET B1 = B 2940 IF (C1 = 0 ) AND (D1 = 0) AND (B1 = 0) THEN 2950 ELSE 2970 2950 LOCATE 22,20:PRINT "The equation is y = 0 " 2960 GOTO 2860 2970 IF (C1 = 0) AND (D1 = 0) THEN 2980 ELSE 3000 2980 LET Y = -(B1) / A1 2990 GOTO 3040 3000 LET Y = D1 / A1 3010 IF (C1 = 0) THEN 3020 ELSE 3040 3020 LET Y = (D1 + (-(B1))) / A1 3030 GOTO 3040 3040 FOR X1 = -5 TO 5 STEP 1 3050 LOCATE R,24:PRINT X1:LOCATE R,27:PRINT USING "#######.##";Y 3060 IF X1 = 0 THEN LOCATE R,38:PRINT "(y-axis intercept)" 3070 R = R + 1 3080 NEXT X1 3090 LOCATE 22,20:PRINT "The equation is y = ";Y 3100 GOTO 2860 3110 CLS 3120 LOCATE 2,10:PRINT" USING (x1,y1), (x2,y2)" 3130 LOCATE 5,10:PRINT "ENTER x1":LOCATE 5,19:INPUT X1 3140 LOCATE 6,10:PRINT "ENTER y1":LOCATE 6,19:INPUT Y1 3150 LOCATE 7,10:PRINT "ENTER x2":LOCATE 7,19:INPUT X2 3160 LOCATE 8,10:PRINT "ENTER y2":LOCATE 8,19:INPUT Y2 3170 LET M1 = ( Y2 - Y1) 3180 LET M2 = (X2 - X1) 3190 IF M2 = 0 THEN LOCATE 15,10:PRINT "CANNOT FIND SLOPE...":FOR T = 0 TO 500:NEXT T:GOTO 3110 3200 IF M2 < > 0 THEN 3210 3210 M = M1 / M2 3220 X3 = M * (-X1) 3230 Y = X3 + Y1 3240 LOCATE 14,10:PRINT "The pliminary equation is y - ";Y1;" = ";M;"(x - ";X1;")" 3250 LOCATE 15,10:PRINT "The equation of the line is y = ";M;"x";" + ";Y 3260 LOCATE 16,10:PRINT "The slope(m) of the line is ":LOCATE 16,38:PRINT USING "#######.###";M 3270 LOCATE 17,10:PRINT "Any more equations(y/n)":LOCATE 17,34:INPUT AE$ 3280 IF AE$ ="Y" OR AE$ ="y" THEN 3110 3290 GOTO 2260 3300 REM section will find a point of intersection given two lines*** 3310 CLS 3320 LOCATE 1,10:PRINT "POINT OF INTERSECTION " 3330 LOCATE 5,10:PRINT "This section offers the user a quick approach to " 3340 LOCATE 6,10:PRINT "finding out if two non-parallel lines intersect " 3350 LOCATE 7,10:PRINT "at a given point, given a certain x-value range." 3360 LOCATE 9,10:PRINT "You are to enter the equations of the two lines," 3370 LOCATE 10,10:PRINT "in the form aY + b = mX + d. The a-value on either" 3380 LOCATE 11,10:PRINT "equations cannot be zero(0) or a value of one(1)" 3390 LOCATE 12,10:PRINT "will be assigned to a. The b,m or d values can be" 3400 LOCATE 13,10:PRINT "zero(0)." 3410 LOCATE 14,10:PRINT "After the two equations are entered, you are to " 3420 LOCATE 15,10:PRINT "enter the maximum x-value and the minimum x-value" 3430 LOCATE 16,10:PRINT "range you want to test in. You are to enter the " 3440 LOCATE 17,10:PRINT "increment value that the program should test at" 3450 LOCATE 18,10:PRINT "also. If no point is found, then this will be " 3460 LOCATE 19,10:PRINT "indicated." 3470 LOCATE 22,25:PRINT "PRESS SPACE BAR TO CONTINUE" 3480 A$ = INKEY$ 3490 IF A$ = CHR$(32) THEN 3500 ELSE 3480 3500 CLS:A1 = 0:B1=0:M1=0:D1=0:A2=0:B2=0:M2=0:D2=0:Y3=0:Z3=0:Y4=0:Z4=0:Y2=0:Y1=0 3510 LOCATE 3,10:PRINT "Using aY + b = mX + d as the guide for a line equation..." 3520 LOCATE 5,10:PRINT "enter first line equation:" 3530 LOCATE 6,15:PRINT "enter a":LOCATE 6,23:INPUT A1 3540 IF A1 = 0 THEN A1 = 1 3550 LOCATE 7,15:PRINT "enter b":LOCATE 7,23:INPUT B1 3560 LOCATE 8,15:PRINT "enter m":LOCATE 8,23:INPUT M1 3570 LOCATE 9,15:PRINT "enter d":LOCATE 9,23:INPUT D1 3580 LOCATE 12,15:PRINT "now, enter the second equation:" 3590 LOCATE 13,15:PRINT "enter a":LOCATE 13,23:INPUT A2 3600 IF A2 = 0 THEN A2 = 1 3610 LOCATE 14,15:PRINT "enter b":LOCATE 14,23:INPUT B2 3620 LOCATE 15,15:PRINT "enter m":LOCATE 15,23:INPUT M2 3630 LOCATE 16,15:PRINT "enter d":LOCATE 16,23:INPUT D2 3640 Y3 = D1 - B1 3650 Z3 = M1 / A1 3660 Y4 = D2 - B2 3670 Z4 = M2 / A2 3680 IF (A1 = A2) AND (B1 = B2) AND (M1 = M2) AND (D1 = D2) THEN 3690 ELSE 3710 3690 LOCATE 18,10:PRINT "YOUR TWO EQUATIONS ARE HAVING THE SAME VALUES..." 3700 FOR T = 0 TO 1500:NEXT T:GOTO 3300 3710 Y6 = (M1 / A1) + ((D1 -B1) / A1) 3720 Y7 = (M2 / A2) + ((D2 - B2) / A2) 3730 IF Y6 = Y7 THEN 3740 ELSE 3770 3740 CLS:LOCATE 15,10:PRINT "SORRY, BUT I CALCULATE THESE TWO LINES TO BE THE SAME..." 3750 FOR T = 0 TO 2000:NEXT T 3760 GOTO 3300 3770 LOCATE 18,15:PRINT "Input high value":LOCATE 18,32:INPUT HV 3780 IF HV > 999999 THEN 3770 3790 LOCATE 19,15:PRINT "Input low value":LOCATE 19,31:INPUT LV 3800 IF LV < -999999 THEN 3790 3810 IF (HV = LV) OR (LV > HV) THEN BEEP:GOTO 3770 3820 LOCATE 20,15:PRINT "Input increment value":LOCATE 20,37:INPUT INX 3830 IF (INX = 0) OR (INX < 0) THEN 3820 3840 IF (INX > HV) OR (INX = HV) THEN 3820 3850 LOCATE 22,20:PRINT "Are these values correct(y/n)":LOCATE 22,50:INPUT PL$ 3860 IF PL$ = "y" OR PL$ ="Y" THEN 3890 3870 IF PL$ = "N" OR PL$ = "n" THEN 3500 3880 GOTO 3850 3890 CLS 3900 FOR X = LV TO HV STEP INX 3910 Y1 = (Z3 * X) + Y3 3920 Y2 = (Z4 * X) + Y4 3930 IF Y1 = Y2 THEN BEEP:LOCATE 15,20:PRINT "THE LINES INTERSECT AT(X,Y): ";"(";X;",";Y1;")":GOTO 3970 3940 LOCATE 25,2:PRINT "X-VALUE,EQ(1),EQ(2) Y-VALUES...";X,Y1,Y2 3950 NEXT X 3960 LOCATE 15,10:PRINT "NO INTERSECTION POINT FOUND IN THE RANGE GIVEN..." 3970 LOCATE 17,20:PRINT "PRESS THE SPACE BAR TO RETURN " 3980 ATT$ = INKEY$ 3990 IF ATT$ = CHR$(32) THEN 10 4000 GOTO 3980